package com.hwadee.property.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.hwadee.property.pojo.ChargeItem;
import com.hwadee.property.dto.PageResult;

import java.util.List;

public interface IChargeItemService extends IService<ChargeItem> {

    PageResult<ChargeItem> getPage(int current, int size, String chargeName, Long communityId, Double amount);

    /**
     * 根据小区 ID 查询收费项目列表
     *
     * @param communityId 小区 ID
     * @return 收费项目列表
     */
    List<ChargeItem> listByCommunityId(Long communityId);

    /**
     * 新增收费项目
     *
     * @param chargeItem 收费项目信息
     * @return 新增成功返回 true，否则返回 false
     */
    boolean addChargeItem(ChargeItem chargeItem);

    /**
     * 修改收费项目信息
     *
     * @param chargeItem 收费项目信息
     * @return 修改成功返回 true，否则返回 false
     */
    boolean updateChargeItem(ChargeItem chargeItem);

    /**
     * 删除收费项目
     *
     * @param id 收费项目 ID
     * @return 删除成功返回 true，否则返回 false
     */
    boolean deleteChargeItem(Long id);

    ChargeItem getUnitFeeByCommunityID(Long id, String feeType);
}